/**
 * Created by PanJiaChen on 16/11/18.
 */

/**
 * @param {string} path
 * @returns {Boolean}
 */
export function isExternal(path) {
  return /^(https?:|mailto:|tel:)/.test(path);
}

/**
 * @param {string} str
 * @returns {Boolean}
 */
export function validUsername(str) {
  return str.trim() !== '';
}
// 排序验证（6位）
export function validateGoodsSort(rule, value, callback) {
  if (!((value >= 1 && value <= 999999 && /^\d{1,6}$/.test(value)) || value === '')) {
    callback(new Error('请输入数字为1-999999的整数'));
  } else {
    callback();
  }
}
// 排序验证（2位）
export function validateSortValue(str) {
  const reg = /^\d{1,2}$/;
  return (str >= 1 && str <= 99 && reg.test(str)) || !str;
}
// 价格校验正则
export function validatePrice(rule, value, callback) {
  if (value === '' || value <= 0) {
    callback(new Error('基准售价不能为空，0或负数'));
  } else if (!/^[0-9]+(.[0-9]{1,2})?$/.test(value)) {
    callback(new Error('请输入格式正确的基准售价（整数或两位小数）'));
  } else {
    callback();
  }
}
// 手机号校验
export function validatePhone(rule, value, callback) {
  if (value === '') {
    callback(new Error('手机号不能为空'));
  } else if (!/^1[3-9]\d{9}$/.test(value)) {
    callback(new Error('手机号格式错误'));
  } else {
    callback();
  }
}
// 换算系数验证
export function validateConversion(rule, value, callback) {
  if (value === '' || value <= 0) {
    callback(new Error('换算系数不能为空，0或负数'));
  } else if (!/^[0-9]+(.[0-9])?$/.test(value)) {
    callback(new Error('请输入格式正确的换算系数（整数或一位小数）'));
  } else {
    callback();
  }
}
// 折扣验证
export function validateDiscount(rule, value, callback) {
  const reg = /^\d{1,2}$/;
  if (!value) {
    callback(new Error('活动折扣不能为空。'));
  } else if (!reg.test(value) || value <= 0) {
    callback(new Error('请输入1-99的整数。'));
  } else {
    callback();
  }
}
